package facade;

import java.util.Collection;

import javax.ejb.Remote;

import utils.ZaraException;
import entidadesVO.AccesorioVO;
import entidadesVO.ArticuloVO;
import entidadesVO.CentroDistribucionVO;
import entidadesVO.PALCVO;
import entidadesVO.RopaVO;
import entidadesVO.SolDistVO;
import entidadesVO.TiendaVO;
import entidadesVO.OFADVO;

@Remote
public interface Facade {
	
public void inicializar();
	
	public void setRopa(RopaVO ropaVO) throws ZaraException;
	
	public void setAccesorio(AccesorioVO accesorioVO) throws ZaraException;
	
	public ArticuloVO getArticulo(String referencia) throws ZaraException;
	
	public Collection<ArticuloVO> getArticulosNuevos() throws ZaraException;
	
	public Collection<ArticuloVO> getArticulos() throws ZaraException;
	
	public CentroDistribucionVO getCentroDistribucion(String nombreCentroDistribucion) throws ZaraException;
	
	public Collection<CentroDistribucionVO> getCentrosDistribucion() throws ZaraException;

	public Collection<ArticuloVO> getArticulosMesRebaja() throws ZaraException;
	
	public void setOFAD(OFADVO ofadVO) throws ZaraException;
	
	public void setOFADS(Collection<OFADVO> ofads) throws ZaraException;
	
	public PALCVO setPALC(PALCVO palcVO) throws ZaraException;
	
	public TiendaVO getTienda(String nombreTienda) throws ZaraException;

	public Collection<PALCVO> setPALCS(Collection<PALCVO> palcs) throws ZaraException;
	
	public Collection<ArticuloVO> getArticulosPedidosPorNTiendas(int nTiendas) throws ZaraException;
	
	public SolDistVO getSolDist(String nombreCentroDistribucion) throws ZaraException;
	
	public void persistirSolDist(SolDistVO solDistVO) throws ZaraException;
	
	public Collection<ArticuloVO> getListadoArticuloVOTentativoOFAD() throws ZaraException;
}
